Table 1–1: Basic 4GL object types
|
Role
|
Object
|
Description
|
|
Organizer
|
Window
|
The outermost organizer object. It is not modal, can have a menu bar and pulldowns, and can parent all other objects.
|
|
Dialog box
|
Technically a type of frame with its own dedicated window. Dialog boxes are modal, cannot have a menu bar, cannot be resized, and must be parented by a window. You typically use them for capturing user input on a specific issue.
|
|
Frame
|
An object that delimits a rectangular area and defines a TAB-traversal group. Frames can have their own border and title bar. You can use frames to organize and display other objects.
|
|
Rectangle
|
A static object that visually delimits a rectangular area. You can use a rectangle to group other objects for emphasis. A rectangle does not define a traversal group or have any active characteristics; it is purely a visual object.
|
|
Data access
|
Query
|
A group of related instructions that tell OpenEdge to find a subset of records from one or more database tables. This is a standalone object, but several objects have a query function embedded in them.
|
|
Data display and capture
|
Data browser
|
An object that displays the results of a database query in row/column tabular format. Each row represents a record, and each column a field. Usually called a browse widget.
|
|
(Data display and capture)
|
Combo box
|
An object that combines a fill-in with a selection list. The fill-in shows the current value. The user can set the value by typing into the fill-in, or by picking an item from those in the list.
|
|
Data viewer
|
An object that displays the results of a database query one record at a time, using one fill-in per field. Also called a DB-Fields widget
|
|
Editor
|
A field-level object that allows editing of large (typically multi-line) character fields. By default, editors support features such as cut, copy, paste, and word-wrap.
|
|
Fill-in (Edit box)
|
A field-level object that accepts user input, typically a single line of text. The system evaluates that text, possibly performing additional processing such as type conversion and validation, and assigns the result to a database field or a variable.
|
|
Radio-button set
|
A group of buttons representing a set of values for a variable, only one of which can be valid at a given time. Selecting a button automatically deselects the previous choice.
|
|
Selection list (pick list)
|
A scrollable list of character strings. The strings are the possible values for an underlying field or variable. You can use a selection list to allow an end user to select one or several items from a predetermined list of character values.
|
|
(Data display and capture)
|
Slider control
|
A virtual knob that the user moves along a track. The track represents some subrange of INTEGER; a built-in readout displays the current value. The limiting values are -32,768 and 32,767. Only a value of type INTEGER, without extent, can be displayed by a Slider.
|
|
Toggle box (check box)
|
A small, square box that represents a logical value. You can use groups of check boxes to represent sets of properties.
|
|
Action control
|
Button (pushbutton)
|
A field-level object that a user typically selects to invoke some action. AppBuilder offers one generic pushbutton plus others predefined for special purposes.
|
|
Other
|
Text object (static text)
|
Standalone text that is not bound to any other object, though it might appear to be.
|
|
Image object (static image)
|
A static field-level object used to display a bitmap from a graphics file. The Progress 4GL supports many different graphic formats under MS-Windows.
|